import * as dicts from "@/dict"

/**
 * 在指定字典中查找指定值对应的项内容
 * @param {string} dict - 字典名称
 * @param {string} value - 要查找的值
 * @param {Object} options - 可选参数对象
 * @param {string} options.dictNameKey - 字典项名称的键名，默认为 "name"
 * @param {string} options.dictValueKey - 字典项值的键名，默认为 "value"
 * @returns {Object|undefined} - 返回查找到的字典项对象内容，如果未找到则返回 undefined
 */
export function useDict(dict, value, options = { dictNameKey: "name", dictValueKey: "value" }) {
  if (dicts[dict]) {
    const find = dicts[dict].find((item) => item[options.dictValueKey] == value)
    if (find) return find[options.dictNameKey]
  } else {
    console.error(dict + " 字典不存在")
  }
}

/**
 * 在指定字典中查找指定值对应的项
 * @param {string} dict - 字典名称
 * @param {string} value - 要查找的值
 * @param {Object} options - 可选参数对象
 * @param {string} options.dictNameKey - 字典项名称的键名，默认为 "name"
 * @param {string} options.dictValueKey - 字典项值的键名，默认为 "value"
 * @returns {Object|undefined} - 返回查找到的字典项对象，如果未找到则返回 undefined
 */
export function useDictItem(dict, value, options = { dictNameKey: "name", dictValueKey: "value" }) {
  if (dicts[dict]) {
    return dicts[dict].find((item) => item[options.dictValueKey] == value)
  } else {
    console.error(dict + " 字典不存在")
  }
}
